import request from '@/utils/request'

/**
 * 菜单管理API
 */

/**
 * 获取菜单列表
 * @returns {Promise} 菜单列表响应数据
 */
export function getMenuList() {
  return request({
    url: '/api/v1/menus',
    method: 'get'
  })
}

/**
 * 获取用户菜单
 * @returns {Promise} 用户菜单响应数据
 */
export function getUserMenus() {
  return request({
    url: '/api/v1/menus/user',
    method: 'get'
  })
}

/**
 * 获取菜单树形结构
 * @returns {Promise} 菜单树形响应数据
 */
export function getMenuTree() {
  return request({
    url: '/api/v1/menus/tree',
    method: 'get'
  })
}

/**
 * 创建菜单
 * @param {Object} data - 菜单数据
 * @returns {Promise} 创建菜单响应数据
 */
export function createMenu(data) {
  return request({
    url: '/api/v1/menus',
    method: 'post',
    data
  })
}

/**
 * 更新菜单
 * @param {number} menuId - 菜单ID
 * @param {Object} data - 更新数据
 * @returns {Promise} 更新菜单响应数据
 */
export function updateMenu(menuId, data) {
  return request({
    url: `/api/v1/menus/${menuId}`,
    method: 'put',
    data
  })
}

/**
 * 删除菜单
 * @param {number} menuId - 菜单ID
 * @returns {Promise} 删除菜单响应数据
 */
export function deleteMenu(menuId) {
  return request({
    url: `/api/v1/menus/${menuId}`,
    method: 'delete'
  })
} 